Page({
  data: {
    stunum:'',
    account:"",
    studentInfo: {
      name: '',
      gender: '',
      class: 0,
      grade: '',
      college: '',
      idNumber: ''
    },
    isEditing: false, // 是否处于编辑状态
    tempStudentInfo: {} // 用于存放临时修改的信息
  },

  onLoad: function () {
    this.setData({
      account:this.options.account,
      stunum:(this.options.account).substring(1,11)
    })
    // console.log(this.data.account);
    // 模拟从数据库导入学生信息，实际情况中需替换为真实数据获取逻辑
    wx.cloud.callFunction({
      name:"User_manage",
      config: {
        env: this.data.envId
      },
      data:{
        type:"getuserinfo",
        data:{
          account:this.data.account,
        }
      },
      success:res=>{
        this.setData({
          studentInfo: {
            name: res.result.message.name,
            gender:res.result.message.gender,
            class: res.result.message.Class,
            grade: res.result.message.grade,
            college: res.result.message.college,
            idNumber: (res.result.message.idNumber).substring(1,19)
          },
          tempStudentInfo: {} // 初始化为空，准备存放修改的信息
        });
      },
      fail:res=>{
        wx.showToast({
          title: '用户信息获取失败',
          icon:"none"
        })
      }
    });
    

  },

  // 点击修改个人信息按钮
  editInfo: function () {
    this.setData({
      isEditing: true,
      tempStudentInfo: { ...this.data.studentInfo } // 复制当前信息到临时信息中
    });
  },

  // 提交修改
  submitEdit: function () {
    // 在实际应用中，此处应有逻辑将修改后的数据提交到数据库
    this.setData({
      studentInfo: { ...this.data.tempStudentInfo }, // 将临时信息保存为正式信息
      isEditing: false // 退出编辑状态
    });

    wx.cloud.callFunction({
      name:"User_manage",
      config: {
        env: this.data.envId
      },
      data:{
        type:"modify",
        data:{
          account:this.data.account,
          name:this.data.studentInfo.name,
          Class:this.data.studentInfo.class,
          grade:this.data.studentInfo.grade,
          college:this.data.studentInfo.college,
          gender:this.data.studentInfo.gender,
          // idNumber:this.data.studentInfo.idNumber
        }
      },
      success:res=>{
        console.log(res.result.message);
        wx.showToast({
          title: res.result.message,
          icon:"none"
        })
      },
      fail:res=>{
        wx.showToast({
          title: '用户信息修改失败',
          icon:"none"
        })
      }
    });

  },

  // 取消修改
  cancelEdit: function () {
    this.setData({
      isEditing: false,
      tempStudentInfo: {} // 清空临时信息
    });
  },

  // 监听输入框变化
  handleInputChange: function (e) {
    const field = e.currentTarget.dataset.field;
    const value = e.detail.value;
    let tempInfo = { ...this.data.tempStudentInfo };
    tempInfo[field] = value;
    this.setData({
      tempStudentInfo: tempInfo
    });
  }
});